package 课程设计报告_hb_7_6;

import java.io.BufferedReader;
import java.io.FileReader;
import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;

/**
 * @author Jiang Zhiyan
 *
 * 2021年7月6日 上午11:49:02
 *
 */
public class UserService {
//     key就是username
	private Map <String ,User> datas = new HashMap<String,User>();
	
	public UserService() {
		init();
	}
	
	public void init() {
//		1、读取user.data中的所有数据
		try(FileReader fr = new FileReader("./user/users.data",StandardCharsets.UTF_8);
				BufferedReader  br = new BufferedReader(fr);
				){
			String data = null;
			while((data = br.readLine())!= null) {
//				处理data 
				String [] arr = data.split(":");
				User user = new User(arr[0],arr[1],arr[2]);
				datas.put(user.getUsername(), user);
			}
		}catch(Exception e) {
			throw new RuntimeException(e);
		}
	}
	
	/**
	 * 判断用户名是否存在
	 * @throws UserNameExitsException 
	 */
	public void checkUserName(String username) throws UserNameExitsException {
		if(datas.containsKey(username)) {
			//出现重复
			throw new UserNameExitsException("用户名重复");
		}
	}
	public void login(String username,String pwd) {
		
	}
	
	/**
	 * 用户注册
	 */
	
	public void regist(User user) {
//		为user提供唯一的主键值
		String uuid = UUID.randomUUID().toString();
		user.setId(uuid.replaceAll("-",""));
	}
}
